/**
 * 用户信息路由模块
 * 这里只存放与用户信息相关的客户端请求和处理函数之间的映射关系
 */

// 导入express
const express = require('express')
// 创建路由对象
const router = express.Router()
// 导入用户信息路由处理模块
const userInfoHandler = require('../router_handler/userInfo')
// 导入图片上传中间件
const { uploadAvatar } = require('../middleware/upload')
// 导入认证中间件
const authenticateToken = require('../middleware/authMiddleware')

// 获取用户信息
router.get('/userinfo', authenticateToken, userInfoHandler.handleGetUserInfo)

// 上传用户头像：生成头像访问路径，并返回给前端（需要登录）
router.post('/avatar', authenticateToken, uploadAvatar.single('avatar'), userInfoHandler.handleAvatarUpload)

// 修改用户信息
router.put('/userinfo', authenticateToken, userInfoHandler.handleUserInfoUpdate)

// 将路由共享出去
module.exports = router
